package com.hh.mybatisflex.mapper;

import com.hh.common.core.domain.BaseEntity;

/**
 * BaseMapper接口
 *
 * @author hh
 * @date 2023-03-17
 */
public interface BaseMapper<T extends BaseEntity> extends com.mybatisflex.core.BaseMapper<T>
{

    // /**
    //  * 根据主键查询实体
    //  *
    //  * @param id 主键
    //  * @return 实体
    //  */
    // @Lang(Caching.class)
    // @SelectProvider(type = BaseProvider.class, method = "selectById")
    // T selectById(Serializable id);
    //
    // /**
    //  * 条件批量查询，根据 Example 条件查询总数，查询结果的数量由方法定义
    //  * @param example
    //  * @return
    //  */
    // @Override
    // @Lang(Caching.class)
    // @SelectProvider(type = BaseProvider.class, method = "selectByExample")
    // List<T> selectByExample(Example<T> example);
    //
    // /**
    //  * 根据主键更新实体
    //  *
    //  * @param entity 实体类
    //  * @return 1成功，0失败
    //  */
    // @Lang(Caching.class)
    // @UpdateProvider(type = BaseProvider.class, method = "updateById")
    // int updateById(T entity);
    //
    // /**
    // * 根据主键删除
    // *
    // * @param id 主键
    // * @return 1成功，0失败
    // */
    // @Lang(Caching.class)
    // @DeleteProvider(type = BaseProvider.class, method = "deleteById")
    // int deleteById(Serializable id);
    //
    // /**
    //  * 根据主键删除
    //  *
    //  * @param ids 主键
    //  * @return 1成功，0失败
    //  */
    // @Lang(Caching.class)
    // @DeleteProvider(type = BaseProvider.class, method = "deleteByIds")
    // int deleteByIds(Collection<?> ids);

}
